Smart court system

ABSTRACT

A Smart-court system, adaptive to constrained sport environment, for enabling real time analysis and debriefing of sport activities is provided herein. The Smart-court system is comprised of: (i) an automatic recording system comprising a plurality of video cameras located in a court, arranged to real-time (RT) recording of a sport session and utilizing automatic calibration and stabilization module; and (ii) a data processing system comprising: (a) a capture module for grabbing a video stream; (b) an objects&#39; detector module arranged to extract during the RT sport session, the objects from the foreground of each frame; (c) an event module for automatically analyzing, the motion and the activities of the tracked objects for automatically identifying and classifying events, creating a synchronized event log and calculating statistics that occurred during the RT sport session; and (d) a presentation module enabling to perform instant debriefing, combined biomechanical and tactical analysis of the video.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/320,364, filed Jun. 30, 2014, which is a continuation-in-part ofInternational Patent Application No. PCT/IL2013/050162, filed Feb. 21,2013, which designated the United States and claims the benefit ofpriority to U.S. Provisional Application No. 61/602,360 filed Feb. 23,2012, the entire contents of which are incorporated herein for allpurposes.

FIELD AND BACKGROUND OF THE INVENTION

The present invention relates generally to analysis of motion andactivities of an object that is involved in a real sport game. Moreparticularly, the present invention relates to classification andanalysis of real sport game session video.

Participants of real sport games as well as coaches are in an ongoingeffort to improve the activity and capability of the participants in thesport games. For that purpose, various video analysis systems exist inthe art.

Some of the analysis systems that exist in the market require fromparticipants of the real sport games to be equipped with an electronicsensing device. Also, some of the analysis systems use a large array ofcameras, which require a dedicated operator and a long setup andcalibration process.

Video analysis systems that currently exist in the market require a longpreparation period before the video analysis can take place. Forexample, such a preparation process may include manual recording,calibration procedure and uploading of footage. With these systems, auser has to watch and analyze videos and manually tags various events(say a serve or a break point) of the training or match sessions, sincesuch events that are of interest to participants and coaches are notgrouped together.

SUMMARY OF THE INVENTION

According to some embodiments of the present invention, a Smart-courtsystem, adaptive to a constrained sport environment, for enabling realtime analysis and debriefing of sport activities is provided herein. TheSmart-court system is comprised of: (i) an automatic recording systemcomprising a plurality of video cameras that are located in a court,arranged to real-time (RT) recording of a sport session and utilizing anautomatic calibration and stabilization module requiring no humanintervention; and (ii) a data processing system that is comprised of:(a) a capture module for grabbing a video stream of the RT sportsession; (b) an objects' detector module that is arranged to receive astream of video of the tracked objects and extract, during the RT sportsession, the objects from the foreground of each frame; (c) an eventmodule for automatically analyzing, during the RT sport game, the motionand the activities of the tracked objects that appear in the stream ofmultimedia data for automatically identifying and classifying eventsbased on the tracking and analysis of the motion and the activities ofthe tracked objects, creating a synchronized event log and calculatingstatistics that occurred during the RT sport session; and (d) apresentation module enabling to perform instant debriefing, combinedbiomechanical and tactical analysis of the video by selectively playingspecific events by type based on the synchronized event log.

According to some embodiments of the present invention, the smart courtsystem is further comprising a tracking module for identifying in realtime basic events enabling to identify a game session starting with astroke and ending when one of the players gained a score, wherein theevent module enables to identify complex events in near real time at theend of each session during the game match.

According to some embodiments of the present invention, the online videoassociated with event log is uploaded and published in one or moresocial networks.

According to some embodiments of the present invention, the event moduleis further arranged to yield a pattern of behavior and a tacticalbehavior of a player from more than one event.

According to some embodiments of the present invention, the dataprocessing system further generates a profile of the player includinginformation related to: the player's tactical behavior, the pattern ofbehavior, game statistics, calculated success rate in comparison withother players and events.

According to some embodiments of the present invention, automatic cameracalibration is enabled by dividing a court, as captured by the camera,into a grid and checking each junction in the grid for a deviation andwherein the deviation is identified in the grid than the frame in thestreamed video may be checked in the streamed video.

According to some embodiments of the present invention, the dataprocessing system identifies a start and an end of a real sport game orreal training session and automatically identifies a change of status ofthe real sport game (say an and of set in a Tennis Game).

According to some embodiments of the present invention, the video thatis transmitted from the cameras is automatically customized to adjust toenvironment conditions and does not require an intervention of anoperator.

According to some embodiments of the present invention, vibration in thestream of video is automatically reduced, using known in the arttechniques

According to some embodiments of the present invention, the dataprocessing module further enables to create automatic customized videomovie by integrating event or segments according to given criteria whichare determined by the user or predefined by the system.

According to some embodiments of the present invention, change ofdesignated location of players is identified when the players switchsides on the court.

According to some embodiments of the present invention, an additionaltechniques and strategies module provides recommendations to a playerhow to correct activity in a real sport game based on events' analysis,say using a catalogue of recommendations input by experts in the field,and classified according to specific event types.

According to some embodiments of the present invention, events' analysisand pattern behavior enable cutting out idle time between events, fromthe video file.

According to some embodiments of the present invention, the presentationmodule enable playing abridged video which displays only selectedspecified events by jumping between the events according to user querybased on the synchronized log event.

According to some embodiments of the present invention, the presentationmodule enables playing a virtual 3D dynamic scenes using a 3D enginewhich simulates objects behavior based on analyzed video data of objectsmotion and an automatically synchronized event log, as described infurther detail hereinbelow.

According to some embodiments of the present invention, the patternbehavior of the player is further analyzed to identify mental events.

According to some embodiments of the present invention, a method forenabling real time analysis and debriefing of sport activities in aSmart-court system that is adaptive to a constrained sport environmentis provided herein. The method is comprised of the following stages: (i)automatically recording in real time (RT) a real sport session byutilizing an automatic calibration and stabilization module requiring nohuman intervention by a system that is comprising a plurality of videocameras that are located in a court; (ii) tracking motion and theactivities of objects in a video of the RT sport session by a trackingmodule; (iii) receiving a stream of video of the tracked objects andsimultaneously analyzing, during the RT sport session, the motion andthe activities of the tracked objects that appear in the stream ofvideo; (iv) automatically identifying and classifying events based onthe tracking and analysis of the motion and the activities of thetracked objects and calculating statistics that occurred during the RTsport session; and (v) creating a synchronized event log of theclassified events, wherein a user is enabled to perform instantdebriefing, combined biomechanical and tactical analysis of the video byselectively playing specific events by type based on the synchronizedevent log.

According to some embodiments of the present invention, basic eventssuch a first serve, a second serve, etc., are identified in real time,say for identifying a game session starting with a stroke and endingwhen one of the players gains a score, wherein complex events such as adouble fault, are identified near real time at end of each sessionduring the game match, as described in further detail hereinbelow.

According to some embodiments of the present invention, the method isfurther plays an abridged video by jumping between different eventsbased on a user query according to the synchronized event log, say aquery limiting the abridged video to serve events.

According to some embodiments of the present invention, the methodfurther includes publishing and uploading of game statistics, the onlinevideo and associated events recorded in the event log synchronized withthe video, on one or more social networks.

According to some embodiments of the present invention, the methodfurther yields a pattern of behavior and a tactical behavior of a playerfrom more than one event by the analysis module, as described in furtherdetail hereinbelow.

According to some embodiments of the present invention, the methodfurther generates and uploads to the network, a profile of the playerand saves information related to: the player's tactical behavior,pattern of behavior, performance statistics and events, by the dataprocessing system of the presented examples.

According to some embodiments of the present invention, the methodfurther identifies a start and end of a real sport game or real trainingsession and automatically identifies a change of status of the realsport game by the system of the presented examples.

According to some embodiments of the present invention, the methodfurther automatically customizes the video that is transmitted from thecameras, so as to adjust the video to environment conditions and doesnot require an intervention of an operator.

According to some embodiments of the present invention, the methodfurther automatically reduces vibration in the stream of video, sayusing known in the art techniques.

According to some embodiments of the present invention, the methodfurther identifies a change of status by a predefined gesture of theuser, say using gesture recognition techniques, as known in the art.

According to some embodiments of the present invention, the methodfurther identifies a change of designated location of players, when theplayers switch sides on the court.

According to some embodiments of the present invention, the methodfurther provides recommendations to a player on a way to correct hisplaying in a real sport game based on events' analysis, say by anadditional techniques and strategies module, as described in furtherdetail hereinabove.

According to some embodiments of the present invention, the methodfurther cuts out idle time in the video file, say in order to savestorage space by events' analysis and pattern behavior.

According to some embodiments of the present invention, the methodfurther plays an abridged video which includes specified events.

According to some embodiments of the present invention, the methodfurther plays a virtual 3D dynamic scenes based on the videos using 3Dengine to simulate objects behavior based analyzed motion data ofobjects and the synchronized event log.

According to some embodiments of the present invention, the methodfurther analyzes pattern behavior and tactical behavior, so as toidentify a mental event of the player, as described in further detailhereinbelow.

According to some embodiments of the present invention, the methodfurther comprises a step of creating a customized video movie byintegrating events or segments, according to given criteria which aredetermined by the user or predefined by the system.

According to some embodiments of the present invention, the methodfurther comprises a step of identifying an unforced error, say based onidentifying the timing and position of the player before striking theball.

According to some embodiments of the present invention, the methodfurther comprises a step of real time automatic calculation of gamescore based on identified classified events and analysis of player andball position and motion.

According to some embodiments of the present invention, the methodfurther comprises a step of comparing between the players' profiles andproviding performance matching between players.

These, additional, and/or other aspects and/or advantages of the presentinvention are: set forth in the detailed description which follows;possibly inferable from the detailed description; and/or learnable bypractice of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be more readily understood from the detaileddescription of embodiments thereof made in conjunction with theaccompanying drawings of which:

FIG. 1A is a top 3D perspective diagram of a system incorporated in aTennis court, according to some embodiments of the invention;

FIG. 1B is a simplified block diagram of a smart-court system, accordingto some embodiments of the invention;

FIG. 2 is a simplified flowchart of objects detecting module, accordingto some embodiments of the invention;

FIG. 3 is a simplified flowchart illustrating activity of game trackermodule, according to some embodiments of the invention;

FIG. 4 is a simplified flowchart illustrating activity of event module,according to some embodiments of the invention;

FIG. 5 is a simplified flowchart illustrating activity of momentsmodule, according to some embodiments of the invention;

FIG. 6 is a simplified flowchart illustrating activity of upload module,according to some embodiments of the invention; and

FIG. 7 is a simplified flowchart illustrating activity of Debriefingpresentation training module, according to some embodiments of theinvention.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

Before explaining at least one embodiment of the invention in detail, itis to be understood that the invention is not limited in its applicationto the details of construction and the arrangement of the components setforth in the following description or illustrated in the drawings. Theinvention is applicable to other embodiments or of being practiced orcarried out in various ways. Also, it is to be understood that thephraseology and terminology employed herein is for the purpose ofdescription and should not be regarded as limiting.

The term “event” as used herein in this application is defined as an atleast one action (say a first serve of a ball in Tennis) which occurduring a real sport game as captured in video (say a in video ormultimedia file) by cameras positioned around the court, as described infurther detail hereinbelow. Once a system according to presentembodiments identifies the event, a title identifying the event,together with indications on the beginning and end of the event (saytime based indications, or indications on relative position within thevideo, as known in the art) are recorded in an event log file, thussynchronizing the event log with the video. Optionally and additionally,various parameters related to the event—such as a speed of the ball, amaximal height of the ball (as measured along the ball's trajectoryfollowing that serve, till the ball hits the court, the court's net, oran area out of the court's boundaries), etc., are also recorded in thelog event file, as described in further detail hereinbelow.

The term “classification of event” as used herein in this application isdefined as an attribution of an event to a predefined type of sequenceof actions that occur in a real sport game. The classification of theevent is a result of an analysis of the event and it is saved in theevent log, as described in further detail hereinbelow.

The term “tactical behavior” as used herein in this application isdefined as a result of analysis of a pattern of behavior of a playeraccording to more than one event—say by identifying a ‘double fault’event when the player errs twice, say in two serve events, as describedin further detail hereinbelow. The pattern of behavior may be classifiedaccording to a predefined list of tactical behavior types and theclassification of the tactical behavior is saved in the database alongwith the players' profile and other details of the real sport game.

The term “profile” as used herein in this application is defined as acollection of parameters which are related to a real player, say toNovak Djokovic.

The term “T Point” as used herein in this application is defined as thespot on a tennis court where the center line and the service lineintersect perpendicularly to form a “T” shape.

The term “session” as used herein in this application is defined as asegment of a real sport game, as captured in a video, say a segmentwhich consists of a video sequence which starts in a strike of the ballby a player and ends in earned points.

The term “near real-time” (NRT), as used herein in this application isdefined as a delay that is introduced by automated data processingbetween the occurrence of an event and the use of the processed data.For example, classifying an event as a near real-time event refers tothe real time of event occurrence, minus the processing time, as nearlythe time of the live event.

According to some embodiments of the present invention, a system forenabling simultaneous analysis and debriefing of a sport activity (say aTennis match or a Football game) is provided herein. The system mayenable a user to track events that occurred during the activity (say areal sport game). Furthermore, the system may provide automaticclassification, analysis and understanding of the events of the realsport game (say the Tennis match) or training, say for improving theperformance of the player in the real sport game.

According to some embodiments of the present invention, the system mayalso record and analyze activity and motion of a player (say a Tennisplayer) and other objects (say a ball or a net) which are related to thereal sport game, say using three dimensional analysis of video datacaptured during the real sport game.

According to some embodiments of the present invention, there isprovided a data processing system. The data processing system may bearranged to receive a streams of video of a real time (RT) sportactivity (say a Tennis match) from one or more cameras and tosimultaneously analyze, during the sport activity, motion and actions ofobjects that appear in the video stream(s).

According to some exemplary embodiments of the present invention, thesystem is implemented by utilizing a smart-court platform that isadaptive to a constrained sport environment. Optionally, in theconstrained sport environment, there are installed at least two cameras,preferably four cameras, for video capturing and recording of a realsport activity (say a game) which takes place in the constrained sportenvironment. The constrained sport environment may be a swimming pool, afootball field, a tennis court, etc. For the purpose of explaining thepresent exemplary embodiments, a reference may be made to a tennis gameor a tennis training, as a real sport game captured in a video stream,in real time, simultaneously to the game. However, the methods mpresented hereinbelow, may also be applied on video steams in whichsport activities different than Tennis are captured.

According to some embodiments of the invention, vision and imageprocessing methods executed by modules of a system, according toexemplary embodiments presented and described in further detailhereinbelow, are applied for automatic analysis of events captured invideo files of the real sport game.

In one example, the round or oval image of a ball and the round or ovalimages of players' heads are located in three dimensional (3D) imagedata obtained through stereoscopic analysis of video streams, capturedsimultaneous by two or more cameras positioned around a constrainedenvironment. The video streams are captured during a sport activity (saya Tennis game) in real time. Each round or oval image's location is kepttracked of, during the sport activity. Typically, the round or ovalimage of the ball differs from the round or oval image of each player,in size, shape, or number (one ball as opposed to two or more ofplayers).

In a first example, a basic event such a first serve of a ball, by afirst player, in a beginning of a Tennis play, is automaticallyidentified based on a slow closing of distance between a round image offirst player and a round image of the ball (say into a predefined smalldistance) as learnt from analysis of the 3D image data, followed by anonset of rapid movement of the round image of the ball up and away fromthe round image of the first player's head. Then, the round imageprogresses in a nearly parabolic trajectory and collides with an imageof the net dividing the court, which collision marks the end of thatfirst serve event, in what is known as a ‘net’ status.

Consequently, a first serve event with the details of start time of theserve (say the time of that onset of movement away from the firstplayer), and an end time of the serve (say the time in which the ballhits the net), and a ‘net’ status is automatically recorded in an eventlog, which event log is thus synchronized with a video of the match, inreal time or in near real time.

In the example, the first player's second serve (i.e. a second attemptat scoring), which ends in the ball's landing out of the courtboundaries, is similarly identified and recorded, as a second serveevent with the details of start time of the second serve (say a time ofonset of movement away from the first player, in the second time), andan end time of the serve (say the time in which the ball lands out ofthe court), and an ‘out’ status is recorded the an event log, thuscontinuing the automatic synchronization of the event log, in real timeor near real time.

However, the cascade of the two serve events may be automaticallyinterpreted as a complex event (i.e. an event resultant upon occurrenceof a chronological sequence of two or more events, as predefined by anofficial Tennis rule or by another rule input to the system). In thespecific example, upon the ending of the second serve with an ‘out’status (i.e. when the ball hits an area out of the court's boundariesand the first player thus fails to score, for the second time), a thirdevent, namely—a ‘double fault’ event is similarly recorded in thesynchronized event log, with a start time, end time, and additionaldetails (such as player, match number, etc.).

In a second example, following the first serve by the first player,rather than colliding with the net, the ball hits the second player'sside and bounces, which bouncing marks the end of the first serve in an‘in’ status. Within one or two seconds, the first serve is automaticallyrecorded in the event log, as a serve event with the details of thestart time of the first serve (i.e. the time of onset of movement awayfrom the first player), and an end time of the serve (i.e. the time inwhich the ball lands and bounces in the court), and an ‘in’ status.However, after the ball bounces, as the first player runs to the net,the second player hits the ball with a forehand (or a backhand) stroke,and the first player hits the ball again in a volley (i.e. in a shotwhere the ball is struck without allowing the ball to bounce) and theball lands at the second party's side. Consequently, a basic event of aforehand (or a backhand) stroke, a basic event of a volley stroke, and acomplex event of serve-volley pattern are also recorded on the eventlog, with their respective start and end times, type (say ‘forehand’),player id, etc.

Optionally, points scored for a basic or complex event are automaticallycalculated using game rules, and recorded in the events log, togetherwith the basic or complex event.

Consequently, a video stream captured by one (or more) of the camerasduring the Tennis match, may be presented on a computer screen, to aviewer, say a coach or a fan, side by side with a list of some or all ofthe events recorded in the event log during the match, in sync with thevideo. In one example, the system automatically and synchronically movesan arrow symbol among the events in the list presented to the viewer, asthe match progresses in the video. Optionally, the user is allowed toselect among the events, say by jumping from one event to the other (sayby manually moving the arrow symbol, or by clicking on one of the eventsin the presented list), by filtering the event list such that onlyevents associated with a specific player or event type are shown, etc.Consequently, the video shown automatically jumps to (or among) thevideo's portion(s) in which video of the event(s) thus selected is (are)shown, using the start and end time data of that event, as recorded inthe events log, as described in further detail hereinabove.

Optionally, the user may use the event log, to view videos sequencescaptured during different sport activities, say serves by NovakDjokovic, as video captured in different matches. Consequently, a listof serve events recorded in the event log, during several Novak Djokovicmatches are presented to the user, and the user is allowed to skip fromone video sequence to the other, by clicking or using his computer's Tabkey. Optionally, the event log is implemented as a plurality of eventlogs, say event logs of different periods, sport fields, competitions,etc., or any combination thereof.

Thus, exemplary embodiments of the present invention may provide asmart-court platform for analyzing patterns of behavior of an objectparticipating in a real sport game and classifying the patterns. Thesmart-court platform receives video streams of the sport game from twoor more cameras located in the place where the real sport game takesplace. The system may automatically record and analyze a pattern oftactical behavior and then classify it, as described in further detailhereinbelow.

According to some embodiments of the present invention, the systemfurther provides calculations of game statistics such as: (i) player'sand ball's position in various positions; (ii) player's speed; (iii)player's mileage calculation; (iv) player's acceleration; (v) ball'slocation and spin; (vi) number of winners; (vii) number of double fault;and (viii) serve percentage, speed, position and points on first servei.e. whether the player won the point after the serve.

Optionally, the game statistics are calculated in real time or in nearreal time, and are updated in real time or in near real time, throughoutthe sport game.

According to some embodiments of the present invention, the systemautomatically classifies events that took place during a match ortraining, such as: player behavior related events or game rules relatedevents, for example: (a) types and order of strokes, (b) net approach;(c) passing shots; (d) slices; (e) aces, (f) successfully gained points;(g) game types; (h) matches; (i) tactical patterns; (g) forced error;and (h) unforced error, etc., as known in Tennis.

In Tennis, an unforced error has to do with poor performance of a playerand may be identified in relation to a player's profile, and/or ananalysis of the movement of the ball, taking into consideration factorsderived from processing of the video data—such as a ball's direction, aball's speed, a ball's height, position of a player when the player'sopponent strikes the ball, as well as other factors such as the player'sage as recorded in a player's profile, the wind direction in the court,etc.

In one example, an error is automatically detected and classified as aforced error or an unforced error, by analyzing a player's position whenan opponent hits the ball after being served the ball by the player. Incase the player could reach a position where the player can strike theball—as evident from analysis of the simultaneous video streams (say thepositional data of the ball—say speed, height, and/or direction, aspredefined in the system)—at least a specified amount of time (say onesecond) before the ball arrives at that position, but fails to, thesystem automatically classifies the error as an unforced error. In casethe player manages to reach the point within that specified amount oftime (e.g. one second), but still fails to strike the ball, a forcederror rather than an unforced error, is identified. The identificationof a forced vs. an unforced error is thus based on an analysis ofposition and motion of objects (i.e. players and balls) in relevantframes of the video streams captured by the cameras.

Optionally, the age of the player is also taken into consideration, bythe system, for automatically classifying a player's error as anunforced error or as a forced error. For example, when the ball lands ata position within a radius of 0 to 2.5 meters from the player's positionwhich the system records when the opponent strikes the ball (at acertain speed, the system may use a table predefined by an administratorof the system, to determine whether the payer has enough time to hit theball, according to the speed of the ball and the player's age. Thus, inthe example, a failure of a player in his twenties to strike that ballor a player's striking that ended in the ball's hitting the net orlanding out of the court, is classified as an unforced error, whereas afailure of a player in his forties to hit that ball (or a strike withthe ball landing out of the court or hitting the net) is ratherclassified as a forced error.

In a another example, when the ball rather hits at a position within aradius of 2.5 to 12 meters from the player's position as recorded by thesystem when the opponent strikes the ball, the system does not take theplayer's age into consideration, but does take into consideration a newposition which the player runs and positions himself at, after hisopponent strikes the ball. After the player strikes the ball, a failureof the player to score due to the ball's hitting the net or landing outof the court, is identified as an unforced error when the systemestimates that the player has enough time to prepare to strike the ballfrom that new position, and as a forced error when the system estimatesthat the player doesn't have enough time to prepare to strike that ballat that new position.

Optionally, the system may provide a detailed automatic analysiscovering Tennis game events such as (i) served balls that hit the Tpoint, Wide point or Body point (each serve can be close to the serveline or to the net); and (ii) serves above a certain speed limit. Thetypes of strokes which may be identified by the system may include, forexample: (i) first and second serves; (ii) backhand; (iii) forehand,including: inside out and passing shots; (iv) forehand and backhandvolley; (v) nets; (vi) first and second return; (vii) smash, etc.

According to some embodiments of the present invention, the system mayfurther provide an automatic analysis by pattern of: (i) differentcombo; (ii) rally; (iii) data of all points that were gained at secondserves; (iv) a tactical pattern e.g. “Serve-Return-Forehand”; (v)player's position (The position may be presented in a color map) (vi)serve and run; and (vii) rallies above a certain amount of strokes.

According to some embodiments of the present invention, the system mayfurther provide an automatic analysis by score. For example, (i) keepscore (ii) analysis according to specific score in a game; (iii) endingscore in a session; (iv) big points; (v) outs and nets; and (vi) leadingand behind states, say by deriving scoring for different events, fromrules of the game as encoded in modules of an exemplary system of thepresent invention, as described in further detail hereinbelow.

According to some embodiments of the present invention, the automaticanalysis may be performed by identifying and classifying events of anentire RT sport session, say a real Tennis match. Further, the analysismay result in an online edited video version of the RT sport session.Additionally, a user may be enabled to perform debriefing and analysisoperation by selecting to review specific events by their type accordingto the event log—i.e. by jumping from one part of the video to theother, as described in further detail hereinabove.

According to some embodiments of the present invention, an access to allevents of the same type may be achieved via: (i) a clip with a sequenceof all events from the same type, or (ii) an abridged video whichutilizes events' log file, where a user may jump between events of thesame type. Each event in the event log file may include indication of astart point of an event and an end point of the event. Skipping betweenevents may be enabled to the user based on automatic classification andtagging of beginning and end of each event. Each event may be associatedto data including a type name according to classification of the event,a time tag, one or more players that are associated to the event and anevent result.

According to some embodiments of the present invention, there isprovided an immediate feedback process which does not require pre orpost game manual processing for breaking of a session into classifiedevents. The automatic event classification process allows a player and acoach to watch the events and debrief only the events of interest.Additionally, such a feedback provides an efficient and focused trainingprocess.

According to some embodiments of the present invention, the debriefingis performed via a visualization and feedback dashboard which providethe user with: game's statistics, events' analysis, game' video, eventlog data, 3D animated virtual dynamic scenes which show threedimensional (3D) graphics display, based on the player's location andstroke classification, including the ball's and players' movement duringthe game, etc.

According to some embodiments of the present invention, an automaticanalysis of video sequences of an entire match (i.e. sport game) orselected parts thereof (say strategy and key points) is provided herein.The analysis is also performed to present a combined biomechanical and3D tactical analysis, in a synchronized video and 3D virtual scenerydisplay. Biomechanics aspects of the match may include, for example,movement analysis of the player, for improving the player's actionbehavior such as hand movement during strokes, etc.

According to some embodiments of the present invention, data collectionmay be achieved in a non-intrusive manner. It does not interfere withthe game's action and it does not require the player wearing a sensorduring a match (i.e. real sport game) or training. In the 3D virtualdynamic scenes the player and ball position, the players' footwork, theball's trail and hit point on the ground are displayed. The 3D virtualdynamic scenes may be presented and displayed various viewing modes: topview, side view, from the ball's point of view and from the player'spoint of view. The 3D virtual dynamic scenes may be displayed from thepoint of view of the opponent player.

Optionally, the system may create an attributed profile of the object(say a player or ball), based on at least one pattern of tacticalbehavior. The attributed profile may include performance data such asspeed of ball strokes, results' statistics, and motion pattern acrossthe court etc. The system may enable a real-time upload of (i) thestored position; and (ii) the identified motion.

Optionally, utilizing cloud computing services or any other technology,data uploaded by a system of one of the present examples, may beaccessible from any place via the Internet, using any type of computerdevice such as a laptop computer, a tablet computer, a smart phone, andthe like. Players and coaches are thus able to conduct remote debriefingand to provide remote guidance in RT. In other words, virtual coachingmay be provided.

Optionally and additionally, the system may perform a combined andsynchronized biomechanical analysis and 3D tactical analysis of: (i)full game; (ii) strategy e.g. number of hits, type of stroke, locationof hits and the like; (iii) score; and (iv) match scoring patterns suchas big points. The biomechanical analysis may be performed by combining(i) a type or strength of stroke; (ii) type of motion or location of thetennis player in the court; and (iii) type of behavioral patternaccording to match scoring patterns.

Optionally and additionally, embodiments of the present invention mayprovide a system that may perform, without an operator, a preliminarysetup or corrections during the event, the following actions: (i)automatic calibration of cameras by identifying field boundaries andautomatically re-align the cameras' direction, tilt angle, etc.; (ii)automatic customization of light in the stream of video, according to:(a) day and night lighting; and (b) weather conditions; (iii) automaticreduction of vibration in the stream of video; (iv) automaticidentification of a start of the real sport game; (v) automaticidentification of an end of set; and (vi) automatic identification of anend of the real sport game. In one example, the system identifies achange in lighting conditions (say when the sun comes out of a cloud),by slow background comparison among video frames and fast backgroundcomparison among video frames. The system may utilize at least onecomputer device.

According to some embodiments of the present invention, there isprovided an automatic procedure of uploading of debriefing data to aninternet page of a player, and sharing performance of the player byproviding access to the debriefing data from any location via theInternet or any wireless network by laptops, tablets, smart phones etc.Further, remote debriefing may be available to players and coaches, thusoffering guidance in RT.

Furthermore, a dynamic updated database and a social network of athletesand sport players may create a platform for sport players to share datawith their coach, friends and family. The database may include forexample, clips of special events and statistics. Also, the database maybe used as a scouting tool for scouts, coaches and players.

According to some embodiments of the present invention, the smart-courtsystem is implemented in multiple courts and all smart-court systems ofthose courts are connected to one or more social networks and players'databases.

Moreover, embodiments of the present invention provide a system thatenables automatic profile generation according to performance of aTennis player during a game or during a series of games. The profile ofthe Tennis player that was generated may be used for: (i) scouting fornew talents; and (ii) finding a partner according to specifiedparameters. A social network of tennis players may be generated to allowsharing data with other players, a coach, friends and family via clips;special events and statistics e.g. speed of ball. Also, the system maybe used as a learning tool for players. Optionally, the system sendsautomatic notifications to scouts and to coaches, through the socialnetwork, according to update of players' performance parameters.

The generated profile of the real player may be published in the socialnetwork of tennis players. Talent scouting may be performed by utilizingthe published profile as well as partner matching. For example, a realplayer that is aware of her or his Tennis techniques that requireimprovement may search a partner that possesses a higher level in thesespecific Tennis techniques.

FIG. 1A is a top 3D perspective view diagram of a system that isincorporated in a Tennis court, according to some embodiments of theinvention.

In a non-limiting example, the system may be incorporated in a Tenniscourt. A real player 110 may be training or competing against a realplayer 140 with a Tennis ball 120.

According to one aspect of the present invention, four cameras 130 maybe utilized to monitor a 3D area within and around a game's court tocapture motion and activities of real Tennis players 110 and 140 and ofthe ball 120. Optionally, the cameras 130 are megapixel cameras. Whenthe system is in use, video pixels captured by each of the cameras invideo, are translated by processor 150 into 3D coordinates foridentifying the spatial location of the monitored objects (i.e., ball,player, net, etc.). Based on the identified locations, the video data isprocessed for tracking the movement of the Tennis ball 120 and the realplayers 110 and 140. The real players are not required to be equippedwith an electronic sensing device. When the pixel coordinates are known,automatic zooming on the video is also enabled.

According to some embodiments of the invention, camera calibration maybe enabled for each frame. The court may be divided into grids so onlyjunctions of the grids are being checked. If a deviation is identifiedin a grid than the frame may be checked for calibration.

According to another aspect of the invention, at least two cameras,preferably four cameras 130 may be automatically calibrated, accordingto identification of boundaries of the court. The automated calibrationmay not require an intervention of an operator. The cameras 130 maytrack the real players 110 and 140 and the Tennis ball 120 in anaccurate and reliable manner on any surface.

Further, the stream of multimedia data (i.e. video) that is transmittedfrom the cameras 130, may be automatically customized without anintervention of an operator, according to: (a) day and night lighting orartificial floodlight; and (b) weather conditions, for example, in windyweather the cameras 130 may wobble and the multimedia data that istransmitted might need to be fixed; and (c) shadow covering parts ormost of the court. The system may also, automatically reduce vibrationin the stream of video, say through known in the art techniques.

According to some embodiments of the invention, a start and an end of areal sport game or real training may be automatically identified by thesystem (say by tracking the players as they come or leave the court).Furthermore, the system may automatically identify change of gamestatus, and not require an intervention of an operator, by identifying,for example, a predefined gesture of the real players 110 and 140.Optionally, the system may identify change of location of players 110and 140 when the real players 110 and 140 switch sides on the court.Also, the system may identify a repeated serve.

According to another aspect of the invention, the system may analyze apattern of behavior of real players 110 and 140 in a video (say amultimedia) stream. The system may perform an automatic analysis, byreceiving a stream of a video of the real sport game in RT. Next, thesystem may identify and tag the position and the motion of the realplayers 110 and 140 and the ball 120, according to classification rules.The classification rules may be based on tactical behavior patternanalysis of the position and motion of real players 110 and 140, and ofthe ball 120, say by identification of an unforced error, as describedin further detail hereinabove.

Further, the system may enable a review of one or more of the objects'(i) position; (ii) motion; and activity, according to theclassification. Furthermore, the system may store one or more tags withinformation related to classified events and/or patterns of tacticalbehavior. Information regarding activity of the real players mayinclude: (i) type of stroke; (ii) left or right hand usage; and (iii)strength of stroke.

According to yet another aspect of the invention, the system may providerecommendations to a player on how to correct his or her stroke and/orgame management and tactics thus being utilized as a learning tool oftechniques and strategies, as described in further detail hereinabove.

According to yet another aspect of the invention, the system'scapability to understand the course of the Tennis play based onidentifying and classifying events may contribute in cutting out idletime in the video file to save storage space, by cutting out idle timebetween identified events. A Tennis match video includes long periods ofidle time between games' session, where there is not activity of theplayers which is relevant to the game. The system may identify the idletime and cut it out from the video, hence reducing the size of the videofile, saving storage, bandwidth and upload and download resources andcost, etc.

According to yet another aspect of the invention, the system may play anabridged video or virtual 3D dynamic scenes representing the video gamesessions, in which the pattern of tactical behavior of the real players110 and 140 may be presented. The video and the related virtual 3Ddynamic scenes may be displayed simultaneously on the same screen,enabling the user to analyze the game both strategically by reviewingthe motion across the screen at the virtual 3D dynamic scene version,and analyzing biomechanical motion of part of the body at the videofile. The abridged video or virtual 3D dynamic scenes can be playedaccording to a user query for displaying only events of specific type,for example, showing all backhand strokes through the game, through twoor more games played by the same player on different days, etc.

In one example, a user query may request all backhand strokes at thefront area of the court—either of strokes of a specific Tennis mach orstrokes of a number of Tennis matches. Accordingly, a customized video(i.e. clip) may be created by concatenation of video captures of eventsof specific type, thus enabling a player or a coach to focus in specifictype of events. The clip may be uploaded to the social network and beaccessed via the internet 180 or be viewed and/or physically received atthe court.

According to yet another aspect of the invention, the customized videomay be generated by a specified criterion or event. For example,generating a video with all successful backhands in a real sport game orin a series of games. In another example, generating a video of allsuccessful forehands of all champion players from different geographicalplaces.

According to yet another aspect of the invention, the system may createan attribute profile of at least one of the real players 110 and 140based on at least one pattern of behavior and log of events. The patternof behavior may further be analyzed to identify a mental event. Anexample of a mental event that the system may recognize is when a realplayer is angry (say by automatically identifying in the video streams,that the player smashes his racket in anger). Other mental events thatthe system may recognize in the video streams may be, for example, adecline in the performance of the players (say a slowing down of theplayer as evident from continuous measurement of the player's averagespeed). This decline in performance of the player and/or the player'srepeated wiping of sweat from his racket may also be interpreted by thesystem, as related to a mental event.

According to yet another aspect of the invention, the system is arrangedto be an integral part of a Tennis court. Further, the system may befully adaptable to both indoor and outdoor courts.

According to some embodiments of the present invention the real timeanalysis of events during the real sport game may be used for enouncingor displaying the game results for the players and the audience that iswatching the game via a remote terminal 170 or a smart phone 170. Thereal time analysis may be transferred via data communication link 180say over the internet or another wide area network.

Optionally, the data related to the event may be used for supportingline calling decisions of a human umpire or as an objective officiatingtool. For example, the tool may provide accessible debriefing andanalysis capabilities combined with line-calling, to determine if a ballwas inside the court or not, in a Tennis game. Optionally, the streameddata may include, for example: (i) location, speed of the tennis playeror a ball and acceleration of a player or a ball; (ii) type or speed ofa tennis stroke; (iii) result of success or failure at the game to theplayer; and (iv) data related to score that were gained in the game inreal time. Data about the scoring system is transmitted in real time.For example, type of points that are gained during the real sport gameor training.

FIG. 1B is a block diagram of a smart-court system, according to someembodiments of the invention.

According to some embodiments of the invention, a smart-court system 190may be connected to cameras 130 via a data communication link 136. Thesmart-court system 190 may be comprised of an automatic recording system191 which automatically records and analyzes a pattern of tacticalbehavior and then classifies it, as an event in an event log file 194and a data processing system 192.

According to some embodiments of the invention, the data processingsystem 192 may be comprised of the following modules: (i) a capturingmodule 193 for grabbing the video of the RT sport session and encodingit; (ii) object detection module 200 (described in details in FIG. 2);(iii) a game tracker event 300 for identifying basic events; (iv) anevent module 400 for automatically identifying and classifying eventsbased on the tracking and analysis of the motion and the activities ofthe tracked objects and calculating statistics that occur during the RTsport session; (v) a moments module 500 for creating customized video(see FIG. 5); (vi) an uploading module 600 for uploading profiles andvideo to the network; and (vii) a debriefing presentation trainingmodule 700 for enabling a user to watch the clip with the sequence ofevents of a same type or to watch the abridged video.

According to some embodiments of the invention, a server 155 may beconnected to the smart court system via data communication link 136. Theserver may be comprised of: (i) a profile database 157; (ii) socialmanagement module 158 for managing social activity between the players;and (iii) a remote coaching module 159 enabling coaching by viewing thegame video at a remote location.

FIG. 2 is an exemplary simplified flowchart of object detection module200 activity, according to some embodiments of the invention.

According to an aspect of the present invention, the object detectionmodule 200 may begin with receiving a stream of multimedia data of areal sport game in Real Time (RT) (stage 210) from the capturing module193. From each frame, objects (such as players and/or a ball) may beautomatically extracted from the background, by the object detectionmodule 200. First, foreground of each frame is identified and extractedfrom the frame image. (stage 215). Optionally, the background of theimage can be identified and extracted in some of the frames, as thebackground of the frame is not supposed to change from frame to frame itmay be detected each specified amount of time. Optionally, the objectdetection module 200 further identifies a change of the background, saywhen both a slow background comparison among video frames and a fastbackground comparison among the video frames indicate a change in pixelsof the background, as described in further detail hereinabove.

At the next stage, the objects (i.e. players and ball) are detected andextracted from each frame (stage 220). Optionally, a “noise” filter isapplied (stage 225) on the frames and identification of the objectsvideo 3D coordinates is performed by analyzing stereo images of at leasttwo cameras (stage 230).

Finally, the identification and data of objects is sent to a trackingmodule (stage 235).

FIG. 3 is a flowchart diagram illustrating system activity of gametracker module 300, according to some embodiments of the invention. Thegame tracker module 300 analyses frames to yield basic events such as astroke or a serve for the purpose of identifying a session. For example,identifying when a player strikes a ball before the ball touches theground. Additionally, the game tracker module 300 may also identify whenthe ball hits the net or when the ball falls out of the lines or when auser doesn't respond to a ball that falls on the lines.

According to some embodiments of the invention, game tracker module 300may begin with receiving output results of each frame of player and ballcoordinates and identification of first stroke (serve) (stage 310). Thegame video recent frames are analyzed, during the RT sport game foridentifying basic events by identifying specific image pattern such as aball touching ground stroke (stage 315) to determine start and end ofsession by identifying first a stroke such a serve and identifying“out”, “in”, or “miss” event (stage 320).

Optionally, the travel route of the ball is detected and a prediction ofits trajectory is calculated (stage 325).

At the end of each detected session, the analyzed basic event dataincluding coordinates of objects for each determined session of detectedbasic events is conveyed to an event module (stage 330).

FIG. 4 is a flowchart diagram illustrating activity of event module 400,according to some embodiments of the invention. The event module 400 mayyield and classify basic and complex events out of analysis of severalframes. For example, types of strokes and unforced errors. First, theanalyzed basic event data including coordinates of objects for eachdetermined session of a game is received from the tracking module 300.

According to some embodiments of the invention, event module 400 may use410 event templates which define a conditions usable for identifyingbasic events based on an analysis of a motion of objects (i.e. a playeror a ball), say that a certain movement between a ball and a player or aracket is indicative of a serve (stage 415). The event templates may beimplemented as a set of rules encoded in the event module 400 (i.e. as apart of a computer program's code) itself, or be stored in a table of apredefined format, in use by the event module 400, say in a naturallanguage format, as known in the art.

The position, motion, and activities of the tracked objects that appearin the stream of multimedia data of each frame are analyzed during theRT sport game (stage 420).

The received data parameters of each session received from the trackermodule and the motion and activity analysis are compared to the eventtemplates, for identifying basic and complex events in near real time.(stage 425).

Based on the comparison results, the events are classified, wherein theclassification types are related to ruling of the game or related to thetype of stokes or to unforced error (stage 430).

For each event, the timing of beginning and end are estimated and asynchronized log of the event is generated (stages 435, 440), accordingto pattern definitions (e.g. identifying stroke touching point and ballcontact with the net or ground). Optionally, aggregating several eventsto identify a complex event such as a pattern of behavior of a player, amental event (stage 445), or a tactical behavior of a player (stage 450)(say an unforced error).

Optionally, the event module 400 calculates and reports statistics ofevents and game related data throughout the game session (stage 455).

FIG. 5 is a flowchart diagram of Moments module 500, according to someembodiments of the invention.

According to some embodiments of the invention, a user may be enabled toconfigure preference of beginning and ending of an event. For example,one user may configure a beginning of backhand event when the player ismoving her or his hand and another user may configure beginning ofbackhand event when the ball leaves the racket of the player.

The moments modules 500 receives the multimedia file of a real sportgame associated with the event log (stage 510). Optionally, the momentsmodule 500 enables to define customized events segments based onuser/system configuration and on determined events received informationfrom the event log including classification of the events (stage 515).

The module enables to create customized video movie by concatenatingvido sequences of events according to given criteria which may bedetermined by the user or predefined by the system, such criteria mayinclude selecting successful games session, fasted ball strikes, etc.(stage 520).

FIG. 6 is a flowchart diagram illustrating an uploading module 600,according to some embodiments of the invention.

According to an aspect of the present invention, after the real sportgame is over, the following stages are taken: Receiving video file of areal sport game associated with synchronized event log file (stage 610).Based on the video and synchronized event log file, there is created anattribute profile of an object (say a player) based on an analysis ofthe event log, the analysis yielding at least one pattern of behavior tobe published in a social network (stage 615). The uploading module 600may further enable a real-time upload of: the user profile, video fileof a real sport game and/or customized videos to a social network(stages 620, 625).

FIG. 7 is a flowchart diagram illustrating activity of debriefingpresentation training module 700, according to some embodiments of theinvention.

First the debriefing presentation training module 700 receives 710 avideo file of a real sport game associated with a synchronized eventlog.

During the game, in real time, events and statistics are received (715)from the tracking module 300 or the event module 400.

According to an aspect of the present invention, the debriefingpresentation training module 700 further receives a query from a user(720).

Optionally, the module plays a video file of a real sport game with thesynchronized event log enabling the user to jump between specific eventsaccording to user selections (stage 725).

Using the event log, an abridged video may be played per a user query,by jumping between requested events. Optionally, the abridged videopresents only portions of the video, which include events related to theuser query, such as strokes at the rear part of the court (730).Throughout the presentation of the abridged video, the user may jumpfrom one marked event to the other, using a list of events, based on theevent log. According to a user query based on analyzed video data ofobjects motion, a virtual 3D dynamic scenes animated video clip may beplayed. The animated video clip is generated online or in real-time,using 3D engine which simulates players and ball motion (step 735).Optionally, the module presents reports of events and statistics in realtime by voice or by textual titles appearing on the video (stage 740).

According to further embodiments of the present invention, the systemcomprises a pointing device (160, see FIG. 1) enabling to mark positionson the field ground for the purpose of indicating the position of thevirtual opponent. The pointing device is controlled by a designatedcontroller module, based on simulation of the opponent virtual playerand/or predefined training programs. According to an optionalembodiment, the pointing device can be a laser based device enabling touse a laser beam that continuously marks the location of the virtualopponent on the tennis court ground. According to another option thevirtual opponent is indicated by a hologram.

According to yet another aspect of the invention, the system may includeat least one tennis ball machine for projecting balls in a court fortraining purposes. The ball machine may be programmed to utilize thevideo game analysis for identifying player behavior and activate theball machine for effective training of the player.

According to some embodiments of the present invention, the patternanalysis of the players' image can indicate on physical characteristicsof the player such as the player's weight and calories that were lostthroughout the game.

According to an aspect of the invention, tracking, identifying andcapturing the motion of players and objects such as balls and racketsmay be performed utilizing one or more of the following elements: (i) RTmethods; (ii) smart cameras; (iii) image processing and patternsrecognition; (iv) 3D objects localization and tracking; (v) humanbehavior modeling; (vi) 3D visualization (vii) video compression; (viii)web cloud platform, etc.

Further, a system according to the presented examples, may provide: (i)a RT ball speed detection; (ii) an audio feedback, such as announcinggame score or ball velocity; (iii) score measurement; (iv) in and outcalculations; and (v) an immediate video playback.

In the above description, an embodiment is an example or implementationof the invention. The various appearances of “one embodiment”, “anembodiment” or “some embodiments” do not necessarily all refer to thesame embodiments.

Although various features of the invention may be described in thecontext of a single embodiment, the features may also be providedseparately or in any suitable combination. Conversely, although theinvention may be described herein in the context of separate embodimentsfor clarity, the invention may also be implemented in a singleembodiment.

Furthermore, it is to be understood that the invention can be carriedout or practiced in various ways and that the invention can beimplemented in embodiments other than the ones outlined in thedescription above.

The invention is not limited to those diagrams or to the correspondingdescriptions. For example, flow need not move through each illustratedbox or state, or in exactly the same order as illustrated and described.

Meanings of technical and scientific terms used herein are to becommonly understood as by one of ordinary skill in the art to which theinvention belongs, unless otherwise defined.

What is claimed is:
 1. A computer implemented method of video basedsport activity analysis, the method comprising the steps of: a)receiving at least one video stream of a sport session captured in theat least one video stream using at least one video camera; b)automatically tracking motion of at least one object using the videostream; c) based on the tracked motion, automatically identifyingoccurrence of a sequence of basic events captured in the video stream;d) automatically identifying a complex event that is based on theidentified basic events of the sequence; e) automatically generating alog synchronizing between at least two of the identified events and thevideo stream; and f) selecting and playing at least one part of thevideo stream to a user, each one of the selected parts showing arespective one of the identified events as captured in the video stream,the part being selected from the video stream using the log.
 2. Themethod of claim 1, further comprising allowing user selection of atleast one of the events synchronized with the video stream by the log,wherein said selecting of the at least one part of the video stream isfurther based on the user selection.
 3. The method of claim 1, furthercomprising allowing a user to input a query defining a user selection ofat least one of the events synchronized with the video stream by thelog, wherein said selecting of the at least one part of the video streamis further based on the query input by the user.
 4. The method of claim1, further comprising allowing user selection of at least one of theevents synchronized with the video stream by the log, by event type,wherein said selecting of the at least one part of the video stream isfurther based on the user selection.
 5. The method of claim 1, furthercomprising presenting a recommendation to the user upon playing of atleast one of the selected parts, the recommendation being selectedaccording to a type of the event shown in the part.
 6. The method ofclaim 1, further comprising combining the selected parts into a singlevideo sequence, thereby generating an abridged version of the videostream.
 7. The method of claim 1, further comprising combining theselected parts into a single video sequence according to a criterionpredefined by the user, thereby generating an abridged version of thevideo stream.
 8. The method of claim 1, further comprising cutting videosequences in between the selected parts from the video stream.
 9. Themethod of claim 1, further comprising identifying a mental event basedon the tracked motion and on a predefined criterion.
 10. The method ofclaim 1, further comprising capturing at least two of the video streamssimultaneously using at least two video cameras, each video camerasimultaneously capturing the sport session in a respective one of thevideo streams, wherein said tracking is further based on threedimensional (3D) analysis of the simultaneously captured video streams.11. The method of claim 1, further comprising identifying a TennisUnforced Error event based on the tracked motion and on a predefinedcriterion.
 12. The method of claim 1, further comprising identifying aTennis Forced Error event based on the tracked motion and on apredefined criterion.
 13. The method of claim 1, further comprisinggenerating an animated video clip based on the tracked motion andplaying the animated video clip in sync with said playing of theselected parts, on a screen, using the event log.
 14. The method ofclaim 1, further comprising presenting a list of at least some of theevents synchronized with the video stream by the log in sync with saidplaying of the selected parts, on a screen, using the log synchronizingbetween at least two of the identified events and the video stream,while allowing the user to jump between two of the played parts byselecting among the events in the list being presented.
 15. The methodof claim 1, further comprising generating an object profile based atleast on the tracked motion.
 16. The method of claim 1, furthercomprising generating a player profile based at least on the trackedmotion.
 17. The method of claim 1, further comprising generating aplurality of player profiles based at least on the tracked motion, andmatching between players using the generated player profiles.
 18. Themethod of claim 1, further comprising generating a player profile basedat least on the tracked motion and uploading the generated profile to asocial network website.
 19. The method of claim 1, further comprisingautomatically identifying a change in a game status based on the trackedmovement.
 20. A system for video based sport activity analysis, thesystem comprising: a data processing system coupled to at least onevideo recording system that is being used for capturing a sport sessionin at least one video stream using at least one video camera, the dataprocessing system comprising a computer programmed to: a) receive the atleast one video stream from the video recording system; b) automaticallytrack motion of at least one object using the video stream; c) based onthe tracked motion, automatically identify occurrence of a sequence ofbasic events captured in the video stream; d) automatically identify acomplex event that is based on the identified basic events of thesequence; e) automatically generate a log synchronizing between at leasttwo of the identified events and the video stream; and f) select andplay at least one part of the video stream to a user, each one of theselected parts showing a respective one of the identified events ascaptured in the video stream, the part being selected from the videostream using the log.